Apply TemplateDotNetTool PR #52: staged pipelines, artifact consolidation, and OTS Software requirements#99
Merged
Malcolmnixon merged 2 commits intomainfrom Mar 4, 2026
Conversation
…tion, and OTS Software requirements Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Update project with template changes including workflow and naming
Apply TemplateDotNetTool PR #52: staged pipelines, artifact consolidation, and OTS Software requirements
Mar 4, 2026
Malcolmnixon
approved these changes
Mar 4, 2026
Malcolmnixon
approved these changes
Mar 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
Ports TemplateDotNetTool#52 into SonarMark: standardized four-section job structure across all CI jobs, a unified
artifacts/folder convention replacing scattered per-job artifact names, and a new OTS Software Requirements section inrequirements.yaml..config/dotnet-tools.jsondemaconsulting.reqstream1.3.0→1.4.0to enableReqStream_EnforcementModeself-validation.github/workflows/build.yamlAll jobs now follow consistent
# === SECTION ===comment structure:quality-checks: version capture toartifacts/; VersionMark self-validation added; uploads asartifacts-qualitybuild: version capture toartifacts/; VersionMark self-validation added; test results toartifacts/; uploads split intoartifacts-build-${{ matrix.os }}(all outputs) andpackages-${{ matrix.os }}(NuGet only)codeql: SARIF output routed toartifacts/; uploaded asartifacts-codeqlintegration-test: downloadspackages-${{ matrix.os }}instead ofartifacts-${{ matrix.os }}; self-validation TRX toartifacts/; uploads asartifacts-validation-${{ matrix.os }}-dotnet${{ matrix.dotnet-version }}build-docs: four separate artifact downloads collapsed into onepattern: 'artifacts-*'+merge-multiple: true; separatepackages-ubuntu-latestdownload; five OTS self-validation steps added (ReqStream, BuildMark, VersionMark, SarifMark, SonarMark); all paths updated toartifacts/.github/workflows/release.yamlpackages-ubuntu-latest(wasartifacts-ubuntu-latest)requirements.yamlOTS Softwaresection with fiveots-tagged requirements:SonarMark-OTS-MSTest,SonarMark-OTS-ReqStream,SonarMark-OTS-BuildMark,SonarMark-OTS-VersionMark,SonarMark-OTS-SarifMark, each linked to self-validation TRX evidenceType of Change
Related Issues
Pre-Submission Checklist
Before submitting this pull request, ensure you have completed the following:
Build and Test
dotnet build --configuration Releasedotnet test --configuration Releasedotnet run --project src/DemaConsulting.SonarMark --configuration Release --framework net10.0--no-build -- --validateCode Quality
dotnet format --verify-no-changesLinting
npx markdownlint-cli2 "**/*.md" "#node_modules"npx cspell "**/*.{md,cs}" --no-progressyamllint .Testing
Documentation
Additional Notes
No C# code changes — this PR is entirely CI workflow restructuring and requirements traceability additions. The
artifacts/folder convention ensures every job writes all outputs to a single local directory, keeping download/publish steps simple and consistent. Thepackages-*split keeps NuGet packages separate from test/coverage artifacts sorelease.yamlandintegration-testjobs can download only what they need.💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.